package com.situ.mall.common.service.impl;

import com.github.pagehelper.PageHelper;
import com.situ.mall.common.entity.Onetoone;
import com.situ.mall.common.mapper.OnetooneMapper;
import com.situ.mall.common.service.IOnetooneService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.situ.mall.common.util.RequestUtil;
import com.situ.mall.common.util.StringUtil;
import com.situ.mall.common.vo.OneToOneVO;
import com.situ.mall.common.vo.TableVO;
import org.springframework.stereotype.Service;

import java.time.LocalDateTime;
import java.util.List;

/**
 * <p>
 *  服务实现类
 * </p>
 *
 * @author JavaWizard
 * @since 2024-04-19
 */
@Service
public class OnetooneServiceImpl extends ServiceImpl<OnetooneMapper, Onetoone> implements IOnetooneService {

    /* 后端请求 */
    // 查询一对一服务列表
    @Override
    public TableVO table(Integer page, Integer limit, String serviceName) {
        //PageHelper 分页小工具
        PageHelper.startPage(page, limit);
        //上边这行代码后跟的第一次查数据库是分页查询，只生效一次！！！
        List<OneToOneVO> list = baseMapper.backList(serviceName);
        return TableVO.data(list);
    }

    // 保存 新增保存 or 编辑保存
    @Override
    public void saveOne(Onetoone onetoone) {
        //如果没传状态码，指定状态码为0，放到里面
        if (onetoone.getStatus() == null || onetoone.getStatus().isEmpty()) {
            onetoone.setStatus("0");
        }
        //如果传了图片，且图片没有加过前缀，给图片加前缀
        if (StringUtil.isNotBlank(onetoone.getImage()) && onetoone.getImage().charAt(0) != 'h') {
            String image = "http://localhost:8081" + onetoone.getImage();
            onetoone.setImage(image);
        }
        //判断是新增还是编辑
        if (onetoone.getId() == null) {
            onetoone.setCreateTime(LocalDateTime.now()); // 创建时间
            baseMapper.insert(onetoone);//新增保存
        } else {
            //编辑不更新密码
            baseMapper.updateById(onetoone);
        }
    }
}
